IB Bonding
===============================================================================

ib-bonding is a High Availability solution for IPoIB interfaces. It is based
on the Linux Ethernet Bonding Driver and was adopted to work with IPoIB.
ib-bonding package contains a bonding driver and a utility called ib-bond to
manage and control the driver operation.

How to work with ib-bond
-------------------------------------------------------------------------------

* Creating a bonding network interface
 --bond-name: sets the name of the bonding network interface. Default is bond0
 --bond-ip <IP/[MASK]>: sets the IP address of bond0. If MASK is not given it
   is set to 255.255.255.0 (24 bits). Note that MASK should be the number of 1
   bits in the netmask.
 --slaves: a comma separated list of slave ib devices. If not given ib0 and
   ib1 will be used as slaves. Child interfaces are allowed.
 --miimon: the MII monitoring interval in mSec. Default is 100
* Deleting a bonding network interface
 --stop: unenslave slaves and delete a specific bonding network interface (use with --bond-name)
 --stop-all: unenslave slaves and delete all bonding network interfaces
* Querying a bonding network interface
 --status: show the status of a specific bonding network interface (use with --bond-name)
 --status-all: show the status of all bonding network interfaces
 
Examples:

* To bring up bond0 with ib0 and ib2 as slaves (assumes 2 HCAs)
	ib-bond --bond-ip 192.186.10.100 --slaves ib0,ib2
* To bring up bond1 with ib0.f1f1 1and ib1.f1f1 as slaves with non default
  netmask
	ib-bond --bond-name bond1 --bond-ip 192.186.10.100/25 --slaves ib0.f1f1,ib1.f1f1
* To query the status of bond1
	ib-bond --bond-name bond1 --status
* To query the status of all bonding interfaces
	ib-bond --status-all
* To stop bond1 
	ib-bond --bond-name bond1 --stop
* To stop all bonding interfaces
	ib-bond --stop-all

